package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 专业业绩对象 professional_achievement
 * 
 * @author ruoyi
 * @date 2024-06-28
 */
public class ProfessionalAchievement extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 业绩ID */
    private Long id;

    /** 业绩名称 */
    @Excel(name = "业绩名称")
    private String achievementName;

    /** 荣誉级别（如：国家级、省级、校级等） */
    @Excel(name = "荣誉级别", readConverterExp = "如=：国家级、省级、校级等")
    private String honorLevel;

    /** 获奖日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "获奖日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date awardDate;

    /** 颁奖单位 */
    @Excel(name = "颁奖单位")
    private String awardOrganization;

    /** 工作室名称（如适用） */
    @Excel(name = "工作室名称", readConverterExp = "如=适用")
    private String studioName;

    /** 业绩描述 */
    @Excel(name = "业绩描述")
    private String description;

    /** 附件路径（或URL，以逗号分隔） */
    @Excel(name = "附件路径", readConverterExp = "或=URL，以逗号分隔")
    private String attachmentUrls;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setAchievementName(String achievementName) 
    {
        this.achievementName = achievementName;
    }

    public String getAchievementName() 
    {
        return achievementName;
    }
    public void setHonorLevel(String honorLevel) 
    {
        this.honorLevel = honorLevel;
    }

    public String getHonorLevel() 
    {
        return honorLevel;
    }
    public void setAwardDate(Date awardDate) 
    {
        this.awardDate = awardDate;
    }

    public Date getAwardDate() 
    {
        return awardDate;
    }
    public void setAwardOrganization(String awardOrganization) 
    {
        this.awardOrganization = awardOrganization;
    }

    public String getAwardOrganization() 
    {
        return awardOrganization;
    }
    public void setStudioName(String studioName) 
    {
        this.studioName = studioName;
    }

    public String getStudioName() 
    {
        return studioName;
    }
    public void setDescription(String description) 
    {
        this.description = description;
    }

    public String getDescription() 
    {
        return description;
    }
    public void setAttachmentUrls(String attachmentUrls) 
    {
        this.attachmentUrls = attachmentUrls;
    }

    public String getAttachmentUrls() 
    {
        return attachmentUrls;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("achievementName", getAchievementName())
            .append("honorLevel", getHonorLevel())
            .append("awardDate", getAwardDate())
            .append("awardOrganization", getAwardOrganization())
            .append("studioName", getStudioName())
            .append("description", getDescription())
            .append("attachmentUrls", getAttachmentUrls())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
